/**
 * @type {language_zh_CN|language_zh_TW|language_en}
 */
let language;
const language_zh_CN = {
    name: "简体中文",
    lang: "zh-Hans",
    title: "少女前线-后勤组合排序器",
    cssClass: "zh-Hans",
    otherLangCssClass: ["zh-Hant", "en"],
    help_wiki: "https://github.com/CHANTXU64/Girls-Frontline/wiki/%E4%BD%BF%E7%94%A8%E5%B8%AE%E5%8A%A9",
    HTML: {
        Modal_footer_button_ok: "确定",
        Modal_footer_button_cancel: "取消",
        header: "后勤组合排序器 ",
        Config_text: "全局数据",
        description_text: "计算结果只和资源（或契约）之间的比例有关。计算结果为均值。",
        localstorageDoesNotWork: "因某些原因，Web存储无法工作，需要手动导出配置",
        localstorageWarning_text: "网页使用Web存储，清除浏览器缓存会导致数据清除，请定期手动导出并保存你的数据。",
        setting: "设置",
        Tab_Anytime_name: "连续后勤",
        Tab_Timetable_name: "时间计划表",
        tab_Anytime_time: "后勤总时长",
        tab_Anytime_hour: "小时",
        tab_Anytime_minute: "分钟",
        tab_Anytime_MinimumIntervalTime: "最短间隔时间",
        tab_Anytime_MinimumIntervalTime_minute: "分钟",
        tab_Timetable_time: "后勤总时长",
        tab_Timetable_hour: "小时",
        tab_Timetable_minute: "分钟",
        tab_Timetable_addtimeh5: "新添加一个收取后勤时间点:",
        tab_Timetable_new_hour: "小时",
        tab_Timetable_new_minute: "分钟",
        h4GreatSuccessRate: "后勤队伍平均大成功概率",
        h4ChapterLimit: "章节解锁",
        Display_PerHour_text: "以每小时显示",
        Display_Total_text: "以总计显示",
        ContractWeight_notImportant: "资源更重要",
        ContractWeight_Important: "契约更重要",
        start_ranking: "开始排序",
        clear_ranking: "清除排序结果",
        result: "排序结果",
        setTarget_HG: "手枪HG",
        setTarget_SMG: "冲锋枪SMG",
        setTarget_RF: "步枪RF",
        setTarget_AR: "突击步枪AR",
        setTarget_MG: "机枪MG",
        setTarget_SG: "霰弹枪SG",
        setTarget_2221: "均衡",
        setTarget_Clear: "清零",
        MissionTable_Title: "关卡",
        MissionTable_head_Mission: "关卡",
        MissionTable_head_Time: "时间",
        PlanDetailsTitle: "方案详情",
        PlanDetails_Mission: "关卡",
        PlanDetails_Time: "时间",
        savePlan: "保存方案",
        Capture: "捕获",
        PlanDetails_InputStartTime_label: "后勤开始时间",
        PlanDetails_InputExecutionTimes_label: "后勤执行次数",
        Saved_Title: "已保存的",
        NoSaved: "空",
        start_ranking_html: "点击 <span style=\"color:#007bff\">开始排序</span> 按钮，排序前十六的结果将在这里显示",
        permanentAddress: "永久地址: ",
        OfflineVersion: "下载离线版本",
        Plan_Combination_title: "方案组合",
        PlanCombination_startDate_label: "开始日期",
        PlanCombination_endDate_label: "结束日期",
        PC_current_title: "现有量-开始日期的量",
        PC_deleteAllPlans: "删除所有方案",
        PC_saveAll: "保存所有后勤方案",
        PC_deletePlan: "删除选中的方案",
        PC_Ranking_card_title: "后勤方案组合排序",
        calcTargetValueTool_title: "需求量计算工具",
        PC_targetValue_h5: "目标量-结束日期的量",
        PC_calcDemand: "计算需求量",
        PC_demandValue_h5: "需求量",
        PC_startRanking: "开始后勤方案组合排序",
        Consumption_reset: "重置",
        Consumption_times_label: "每日执行次数",
        Consumption_add: "添加",
        consumption_times_th: "次数",
        DateTimePeriod: "该方案时间段",
        PlanCombination_planStartDate_label: "开始日期",
        PlanCombination_planEndDate_label: "结束日期",
        addNewTimePeriod: "添加",
        deleteAllTimePeriod: "清除",
        PC_addLogisticsPlan: "添加新的后勤方案",
        PC_addConsumptionPlan: "添加新的其他收支方案",
        CommanderLevel_text: "输入指挥官等级会考虑资源自然恢复",
        PC_calcDemand_description: "计算会考虑现有量、目标量、其他收支方案，但不会考虑资源自然恢复。",
        PC_demand_description: "与普通模式排序不同，该排序结果与所有资源、契约的比值有关，不能再输入如2, 2, 2, 1, 1, 0, 0, 0这样的数值，而应输入600, 600, 600, 300, 1, 0, 0, 0或6, 6, 6, 3, 0.01, 0, 0这样的数值。",
        Logistics_setting_title: "后勤方案设置",
        Consumption_setting_title: "其他收支方案设置",
        LogisticsConsumptionPlanSwitch_label: "切换后勤或其他收支方案",
        PlanCombinationSwitch_label: "后勤方案组合模式",
    },
    HTMLJS: {
        placeholder: {
            Config_importInput: "需要导入的配置",
            Config_exportInput: "导出的配置",
            Time_Anytime_hours: "总时长小时数",
            Time_Anytime_minutes: "总时长分钟数",
            Tab_Anytime_MinimumIntervalTime_minutes: "最小时间间隔分钟数",
            Time_Timetable_hours: "总时长小时数",
            Time_Timetable_minutes: "总时长分钟数",
            Tab_Timetable_new_hours: "新时间点小时数",
            Tab_Timetable_new_minutes: "新时间点分钟数",
            GreatSuccessRate: "大成功基础概率",
            importSaved_input: "需要导入的方案",
            exportSaved_input: "导出的方案",
            renameSaved_input: "新的名称",
            PlanDetails_InputExecutionTimes: "后勤执行次数",
            CommanderLevel: "指挥官等级",
        },
        title: {
            help: "帮助",
            Config_importButton: "导入全局数据",
            Config_export: "导出全局数据",
            neverShowAgain_description: "关闭，不再显示",
            neverShowAgain_localstorageWarning: "关闭，不再显示",
            tab_Timetable_deleteall: "删除全部时间点",
            Tab_Timetable_AddNewTimePoint: "添加一个收取后勤时间点",
            GreatSuccessRateUp_btn: "后勤大成功UP",
            ChapterLimit: "最大已解锁的战役章节",
            ContractWeight: "契约权重",
            Target_minus_100_MT: "人力需求量减少100",
            Target_minus_10_MT: "人力需求量减少10",
            Target_plus_10_MT: "人力需求量增加10",
            Target_plus_100_MT: "人力需求量增加100",
            Target_minus_100_AT: "弹药需求量减少100",
            Target_minus_10_AT: "弹药需求量减少10",
            Target_plus_10_AT: "弹药需求量增加10",
            Target_plus_100_AT: "弹药需求量增加100",
            Target_minus_100_RT: "口粮需求量减少100",
            Target_minus_10_RT: "口粮需求量减少10",
            Target_plus_10_RT: "口粮需求量增加10",
            Target_plus_100_RT: "口粮需求量增加100",
            Target_minus_100_PT: "零件需求量减少100",
            Target_minus_10_PT: "零件需求量减少10",
            Target_plus_10_PT: "零件需求量增加10",
            Target_plus_100_PT: "零件需求量增加100",
            Target_minus_1_TT: "人形需求量减少1",
            Target_minus_01_TT: "人形需求量减少0.1",
            Target_plus_01_TT: "人形需求量增加0.1",
            Target_plus_1_TT: "人形需求量增加1",
            Target_minus_1_ET: "装备需求量减少1",
            Target_minus_01_ET: "装备需求量减少0.1",
            Target_plus_01_ET: "装备需求量增加0.1",
            Target_plus_1_ET: "装备需求量增加1",
            Target_minus_1_QPT: "快建需求量减少1",
            Target_minus_01_QPT: "快建需求量减少0.1",
            Target_plus_01_QPT: "快建需求量增加0.1",
            Target_plus_1_QPT: "快建需求量增加1",
            Target_minus_1_QRT: "快修需求量减少1",
            Target_minus_01_QRT: "快修需求量减少0.1",
            Target_plus_01_QRT: "快修需求量增加0.1",
            Target_plus_1_QRT: "快修需求量增加1",
            importSaved_importButton: "导入数据",
            exportSaved_button: "导出方案",
            renameSaved_button: "重命名方案",
            renameSaved_applyButton: "确认",
            moveSaved_up: "将该方案往上移动一行",
            moveSaved_down: "将该方案往下移动一行",
            deleteSaved: "删除这个方案",
        },
        Demand_hour: "平均每小时需求量",
        Demand_total: "总需求量",
        Timetable_deletePoint: "删除这个时间点",
        FineTuning_minus: "减小需求量",
        FineTuning_plus: "增大需求量",
    },
    JS: {
        alertTitle_warning: "警告",
        chapter_start: "第",
        chapter_end: "战役",
        number(num) {
            //author: zdluffy
            //CC 4.0 BY-SA
            //https://blog.csdn.net/zdluffy/article/details/98970516
            let AA = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十"];
            let BB = ["", "十", "百", "千", "万", "十万", "百万", "千万", "亿"];
            let res = "";
            let numstr = "" + num;
            let k = numstr.length;
            for (let i = 0; i < numstr.length; i++) {
                let tmp = numstr[i] - '0';
                let bIndex = k - i - 1;
                if (0 === tmp) {
                    if ("0" === numstr[i - 1] || i === numstr.length - 1)//处理2003、230出现多余的零
                        continue;
                    else if (bIndex >= 4 && 0 === bIndex % 4)//处理2103243在万位出现多余的零
                        res = res + BB[bIndex];
                    else
                        res = res + AA[tmp];//正常零
                }
                else {
                    res = res + AA[tmp];
                    if (numstr.length === 2 && numstr[0] === '1' && i === 0)
                        res = "";//12读作十二，把1删掉
                    if (0 === bIndex % 4)//万、亿位的要输出
                        res = res + BB[bIndex];
                    else//"十万","百万","千万"其实就是一摆设，万不输出
                        res = res + BB[bIndex % 4];
                }
            }
            return res;
        },
        Manp: "人力",
        Ammu: "弹药",
        Rati: "口粮",
        Part: "零件",
        TPro: "人形",
        Equi: "装备",
        QPro: "快建",
        QRes: "快修",
        FineTuningManp: "人力",
        FineTuningAmmu: "弹药",
        FineTuningRati: "口粮",
        FineTuningPart: "零件",
        FineTuningTPro: "人形",
        FineTuningEqui: "装备",
        FineTuningQPro: "快建",
        FineTuningQRes: "快修",
        FineTuningTool: "微调工具",
        TargetValue0_alert: "需求不能全为0！",
        tab_Anytime_alert1: "总时长不能为0！",
        tab_Timetable_alert1: "不需要在后勤开始点再添加收取时间点",
        tab_Timetable_alert2: "添加的收取时间点不能超过最大时限",
        tab_Timetable_alert3: "已经添加过这个收取时间点",
        tab_Timetable_alert4: "总时长不能为0！",
        Mission: "关卡",
        MinIntervalTime: "最短间隔",
        NoPlan: "没有合适的方案",
        NoMission: "没有可用的关卡",
        PlanDetails_calculateMethod: "计算方式",
        total_time: "总时长",
        total_greatSuccessRate: "大成功总概率",
        PerHour: "平均/h",
        Total : "总计",
        ExecutionTimes: "执行次数",
        plzInputPlanName: "请输入方案名称",
        planDefaultName: "自定义",
        deleteSavedWarning_1: "是否要删除这个名为",
        deleteSavedWarning_2: "的配置？",
        Saved_alert: "导入的数据有问题！",
        Saved_alert2: "保存的数量过多，不能再添加",
        Saved_prompt_title: "方案名称",
        Saved_invalidNameFeedback1: "请填入方案名称。",
        Saved_invalidNameFeedback2: "方案名称太长了。",
        config_alert: "这将会覆盖现有所有的数据，是否要继续？",
        FailedWindowLoadWarn: "可能由于Web存储数据不正确, 导致网页崩溃. 您可以将下面的数据报告到GitHub或发送邮件到chantxu@outlook.com",
        PCTimeAlert1: "请输入开始日期和结束日期。",
        PCTimeAlert2: "时间范围不正确。",
        PC_L_alert1: "请添加该方案时间段。",
        PC_L_alert2_1: "在",
        PC_L_alert2_2: "，执行的后勤总时间将超过24小时。添加失败。",
        PC_L_alert3: "添加的方案太多了，添加失败。",
        PC_C_alert2_1: "在",
        PC_C_alert2_2: "，已添加过其他收支方案。添加失败。",
        PC_deleteAll_confirm: "是否要删除所有方案？",
        PC_saveAll_confirm: "是否要保存所有后勤方案？",
        PC_ranking_add_alert: "请先添加后勤方案再开始排序。",
        PC_ranking_done: "排序完成！",
        resource: "资源量",
        contract: "契约量",
        delete_: "删除",
        chartTooltip_L: "后勤方案",
        chartTooltip_C: "其他收支方案",
        C_preset: "预设",
        C_preset_0: "日常全勤",
        C_preset_1: "周常全勤",
        C_preset_2: "前进营地8:00",
        C_preset_3: "500*4妖精",
        C_preset_4: "2021妖精",
        C_preset_5: "0221妖精",
        C_preset_6: "2221妖精",
        C_preset_7: "7-1自律",
        C_preset_8: "7-4自律",
        C_preset_9: "11-5自律",
        C_preset_10: "手枪建造",
        C_preset_11: "冲锋枪建造",
        C_preset_12: "步枪建造",
        C_preset_13: "自动步枪建造",
        C_preset_14: "机枪建造",
        C_preset_15: "霰弹枪建造",
        C_preset_16: "前进营地2:00",
        C_preset_17: "前进营地5:00",
    },
    html_class: {
        Manp: "人力",
        Ammu: "弹药",
        Rati: "口粮",
        Part: "零件",
        TPro: "人形",
        Equi: "装备",
        QPro: "快建",
        QRes: "快修",
    },
    placeholder_class: {
        Manp_placeholder: "人力",
        Ammu_placeholder: "弹药",
        Rati_placeholder: "口粮",
        Part_placeholder: "零件",
        TPro_placeholder: "人形制造",
        Equi_placeholder: "装备制造",
        QPro_placeholder: "快速建造",
        QRes_placeholder: "快速修复",
    },
};
const language_zh_TW = {
    name: "繁體中文",
    lang: "zh-Hant",
    title: "少女前線-後勤組合排序器",
    cssClass: "zh-Hant",
    otherLangCssClass: ["zh-Hans", "en"],
    help_wiki: "https://github.com/CHANTXU64/Girls-Frontline/wiki/%E4%BD%BF%E7%94%A8%E5%B9%AB%E5%8A%A9",
    HTML: {
        Modal_footer_button_ok: "確定",
        Modal_footer_button_cancel: "取消",
        header: "後勤組合排序器 ",
        Config_text: "全局數據",
        description_text: "計算結果只和資源（或契約）之間的比例有關。計算結果為期望值。",
        localstorageDoesNotWork: "因某些原因，Web存儲無法工作，需要手動導出配置",
        localstorageWarning_text: "網頁使用Web存儲，清除瀏覽器緩存會導致數據清除，請定期手動導出並保存你的數據。",
        setting: "設置",
        Tab_Anytime_name: "連續後勤",
        Tab_Timetable_name: "時間計劃表",
        tab_Anytime_time: "後勤總時長",
        tab_Anytime_hour: "小時",
        tab_Anytime_minute: "分鐘",
        tab_Anytime_MinimumIntervalTime: "最短間隔時間",
        tab_Anytime_MinimumIntervalTime_minute: "分鐘",
        tab_Timetable_time: "後勤總時長",
        tab_Timetable_hour: "小時",
        tab_Timetable_minute: "分鐘",
        tab_Timetable_addtimeh5: "新添加一個收取後勤時間點:",
        tab_Timetable_new_hour: "小時",
        tab_Timetable_new_minute: "分鐘",
        h4GreatSuccessRate: "後勤隊伍平均大成功概率",
        h4ChapterLimit: "章節解鎖",
        Display_PerHour_text: "以每小時顯示",
        Display_Total_text: "以總計顯示",
        ContractWeight_notImportant: "資源更重要",
        ContractWeight_Important: "契約更重要",
        start_ranking: "開始排序",
        clear_ranking: "清除排序結果",
        result: "排序結果",
        setTarget_HG: "手槍HG",
        setTarget_SMG: "衝鋒槍SMG",
        setTarget_RF: "步槍RF",
        setTarget_AR: "突擊步槍AR",
        setTarget_MG: "機槍MG",
        setTarget_SG: "霰彈槍SG",
        setTarget_2221: "均衡",
        setTarget_Clear: "清零",
        MissionTable_Title: "關卡",
        MissionTable_head_Mission: "關卡",
        MissionTable_head_Time: "時間",
        PlanDetailsTitle: "方案詳情",
        PlanDetails_Mission: "關卡",
        PlanDetails_Time: "時間",
        savePlan: "保存方案",
        Capture: "捕獲",
        PlanDetails_InputStartTime_label: "後勤開始時間",
        PlanDetails_InputExecutionTimes_label: "執行次數",
        Saved_Title: "已保存的",
        NoSaved: "空",
        start_ranking_html: "點擊 <span style=\"color:#007bff\">開始排序</span> 按鈕，排序前十六的結果將在這裡顯示",
        permanentAddress: "永久地址: ",
        OfflineVersion: "下載離線版本",
        Plan_Combination_title: "方案組合",
        PlanCombination_startDate_label: "開始日期",
        PlanCombination_endDate_label: "結束日期",
        PC_current_title: "現有量-開始日期的量",
        PC_deleteAllPlans: "刪除所有方案",
        PC_saveAll: "保存所有後勤方案",
        PC_deletePlan: "刪除選中的方案",
        PC_Ranking_card_title: "後勤方案組合排序",
        calcTargetValueTool_title: "需求量計算工具",
        PC_targetValue_h5: "目標量-結束日期的量",
        PC_calcDemand: "計算需求量",
        PC_demandValue_h5: "需求量",
        PC_startRanking: "開始後勤方案組合排序",
        Consumption_reset: "重置",
        Consumption_times_label: "每日執行次數",
        Consumption_add: "添加",
        consumption_times_th: "次數",
        DateTimePeriod: "該方案時間段",
        PlanCombination_planStartDate_label: "開始日期",
        PlanCombination_planEndDate_label: "結束日期",
        addNewTimePeriod: "添加",
        deleteAllTimePeriod: "清除",
        PC_addLogisticsPlan: "添加後勤方案",
        PC_addConsumptionPlan: "添加其他收支方案",
        CommanderLevel_text: "輸入指揮官等級會考慮資源自然恢復",
        PC_calcDemand_description: "計算會考慮現有量、目標量、其他收支方案，但不會考慮資源自然恢復。",
        PC_demand_description: "與普通模式排序不同，該排序結果與所有資源、契約的比值有關，不能再輸入如2, 2, 2, 1, 1, 0, 0, 0這樣的數值，而應輸入600, 600, 600, 300, 1, 0, 0, 0或6, 6, 6, 3, 0.01, 0, 0這樣的數值。",
        Logistics_setting_title: "後勤方案設置",
        Consumption_setting_title: "其他收支方案設置",
        LogisticsConsumptionPlanSwitch_label: "切換後勤或其他收支方案",
        PlanCombinationSwitch_label: "後勤方案組合模式",
    },
    HTMLJS: {
        placeholder: {
            Config_importInput: "需要導入的配置",
            Config_exportInput: "導出的配置",
            Time_Anytime_hours: "總時長小時數",
            Time_Anytime_minutes: "總時長分鐘數",
            Tab_Anytime_MinimumIntervalTime_minutes: "最小時間間隔分鐘數",
            Time_Timetable_hours: "總時長小時數",
            Time_Timetable_minutes: "總時長分鐘數",
            Tab_Timetable_new_hours: "新時間點小時數",
            Tab_Timetable_new_minutes: "新時間點分鐘數",
            GreatSuccessRate: "大成功基礎概率",
            importSaved_input: "需要導入的方案",
            exportSaved_input: "導出的方案",
            renameSaved_input: "新的名稱",
            PlanDetails_InputExecutionTimes: "後勤執行次數",
            CommanderLevel: "指揮官等級",
        },
        title: {
            help: "幫助",
            Config_importButton: "導入全局數據",
            Config_export: "導出全局數據",
            neverShowAgain_description: "關閉，不再顯示",
            neverShowAgain_localstorageWarning: "關閉，不再顯示",
            tab_Timetable_deleteall: "刪除全部時間點",
            Tab_Timetable_AddNewTimePoint: "添加一個收取後勤時間點",
            GreatSuccessRateUp_btn: "後勤大成功UP",
            ChapterLimit: "最大已解鎖的戰役章節",
            ContractWeight: "契約權重",
            Target_minus_100_MT: "人力需求量減少100",
            Target_minus_10_MT: "人力需求量減少10",
            Target_plus_10_MT: "人力需求量增加10",
            Target_plus_100_MT: "人力需求量增加100",
            Target_minus_100_AT: "彈藥需求量減少100",
            Target_minus_10_AT: "彈藥需求量減少10",
            Target_plus_10_AT: "彈藥需求量增加10",
            Target_plus_100_AT: "彈藥需求量增加100",
            Target_minus_100_RT: "口糧需求量減少100",
            Target_minus_10_RT: "口糧需求量減少10",
            Target_plus_10_RT: "口糧需求量增加10",
            Target_plus_100_RT: "口糧需求量增加100",
            Target_minus_100_PT: "零件需求量減少100",
            Target_minus_10_PT: "零件需求量減少10",
            Target_plus_10_PT: "零件需求量增加10",
            Target_plus_100_PT: "零件需求量增加100",
            Target_minus_1_TT: "人形需求量減少1",
            Target_minus_01_TT: "人形需求量減少0.1",
            Target_plus_01_TT: "人形需求量增加0.1",
            Target_plus_1_TT: "人形需求量增加1",
            Target_minus_1_ET: "裝備需求量減少1",
            Target_minus_01_ET: "裝備需求量減少0.1",
            Target_plus_01_ET: "装备需求量增加0.1",
            Target_plus_1_ET: "装备需求量增加1",
            Target_minus_1_QPT: "快建需求量減少1",
            Target_minus_01_QPT: "快建需求量減少0.1",
            Target_plus_01_QPT: "快建需求量增加0.1",
            Target_plus_1_QPT: "快建需求量增加1",
            Target_minus_1_QRT: "快修需求量減少1",
            Target_minus_01_QRT: "快修需求量減少0.1",
            Target_plus_01_QRT: "快修需求量增加0.1",
            Target_plus_1_QRT: "快修需求量增加1",
            importSaved_importButton: "導入數據",
            exportSaved_button: "導出方案",
            renameSaved_button: "重命名方案",
            renameSaved_applyButton: "確認",
            moveSaved_up: "將該方案往上移動一行",
            moveSaved_down: "將該方案往下移動一行",
            deleteSaved: "刪除這個方案",
        },
        Demand_hour: "平均每小時需求量",
        Demand_total: "總需求量",
        Timetable_deletePoint: "刪除這個時間點",
        FineTuning_minus: "減小需求量",
        FineTuning_plus: "增大需求量",
    },
    JS: {
        alertTitle_warning: "警告",
        chapter_start: "第",
        chapter_end: "戰役",
        number(num) {
            //author: zdluffy
            //CC 4.0 BY-SA
            //https://blog.csdn.net/zdluffy/article/details/98970516
            let AA = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十"];
            let BB = ["", "十", "百", "千", "萬", "十萬", "百萬", "千萬", "億"];
            let res = "";
            let numstr = "" + num;
            let k = numstr.length;
            for (let i = 0; i < numstr.length; i++) {
                let tmp = numstr[i] - '0';
                let bIndex = k - i - 1;
                if (0 === tmp) {
                    if ("0" === numstr[i - 1] || i === numstr.length - 1)//处理2003、230出现多余的零
                        continue;
                    else if (bIndex >= 4 && 0 === bIndex % 4)//处理2103243在万位出现多余的零
                        res = res + BB[bIndex];
                    else
                        res = res + AA[tmp];//正常零
                }
                else {
                    res = res + AA[tmp];
                    if (numstr.length === 2 && numstr[0] === '1' && i === 0)
                        res = "";//12读作十二，把1删掉
                    if (0 === bIndex % 4)//万、亿位的要输出
                        res = res + BB[bIndex];
                    else//"十万","百万","千万"其实就是一摆设，万不输出
                        res = res + BB[bIndex % 4];
                }
            }
            return res;
        },
        Manp: "人力",
        Ammu: "彈藥",
        Rati: "口糧",
        Part: "零件",
        TPro: "人形",
        Equi: "裝備",
        QPro: "快建",
        QRes: "快修",
        FineTuningManp: "人力",
        FineTuningAmmu: "彈藥",
        FineTuningRati: "口糧",
        FineTuningPart: "零件",
        FineTuningTPro: "人形",
        FineTuningEqui: "裝備",
        FineTuningQPro: "快建",
        FineTuningQRes: "快修",
        FineTuningTool: "微調工具",
        TargetValue0_alert: "需求不能全為0！",
        tab_Anytime_alert1: "總時長不能為0！",
        tab_Timetable_alert1: "不需要在後勤開始點再添加收取時間點",
        tab_Timetable_alert2: "添加的收取時間點不能超過最大時限",
        tab_Timetable_alert3: "已經添加過這個收取時間點",
        tab_Timetable_alert4: "總時長不能為0！",
        Mission: "關卡",
        MinIntervalTime: "最短間隔",
        NoPlan: "沒有合適的方案",
        NoMission: "沒有可用的關卡",
        PlanDetails_calculateMethod: "計算方式",
        total_time: "總時長",
        total_greatSuccessRate: "大成功總概率",
        PerHour: "平均/h",
        Total : "總計",
        ExecutionTimes: "執行次數",
        plzInputPlanName: "請輸入方案名稱",
        planDefaultName: "自定義",
        deleteSavedWarning_1: "是否要刪除這個名為",
        deleteSavedWarning_2: "的配置？",
        Saved_alert: "導入的數據有問題！",
        Saved_alert2: "保存的數量過多，不能再添加",
        Saved_prompt_title: "方案名稱",
        Saved_invalidNameFeedback1: "請填入方案名稱。",
        Saved_invalidNameFeedback2: "方案名稱太長了。",
        config_alert: "這將會覆蓋現有所有的數據，是否要繼續？",
        FailedWindowLoadWarn: "可能由於Web存儲數據不正確, 導致網頁崩潰. 您可以將下面的數據報告到GitHub或發​​送郵件到chantxu@outlook.com",
        PCTimeAlert1: "請輸入開始日期和結束日期。",
        PCTimeAlert2: "時間範圍不正確。",
        PC_L_alert1: "請添加該方案時間段。",
        PC_L_alert2_1: "在",
        PC_L_alert2_2: "，執行的後勤總時間將超過24小時。添加失敗。",
        PC_L_alert3: "添加的方案太多了，添加失敗。",
        PC_C_alert2_1: "在",
        PC_C_alert2_2: "，已添加過其他收支方案。添加失敗。",
        PC_deleteAll_confirm: "是否要刪除所有方案？",
        PC_saveAll_confirm: "是否要保存所有後勤方案？",
        PC_ranking_add_alert: "請先添加後勤方案再開始排序。",
        PC_ranking_done: "排序完成！",
        resource: "資源量",
        contract: "契約量",
        delete_: "刪除",
        chartTooltip_L: "後勤方案",
        chartTooltip_C: "其他收支方案",
        C_preset: "預設",
        C_preset_0: "日常全勤",
        C_preset_1: "周常全勤",
        C_preset_2: "前進營地8:00",
        C_preset_3: "500*4妖精",
        C_preset_4: "2021妖精",
        C_preset_5: "0221妖精",
        C_preset_6: "2221妖精",
        C_preset_7: "7-1自律",
        C_preset_8: "7-4自律",
        C_preset_9: "11-5自律",
        C_preset_10: "手槍建造",
        C_preset_11: "衝鋒槍建造",
        C_preset_12: "步槍建造",
        C_preset_13: "自動步槍建造",
        C_preset_14: "機槍建造",
        C_preset_15: "霰彈槍建造",
        C_preset_16: "前進營地2:00",
        C_preset_17: "前進營地5:00",
    },
    html_class: {
        Manp: "人力",
        Ammu: "彈藥",
        Rati: "口糧",
        Part: "零件",
        TPro: "人形",
        Equi: "裝備",
        QPro: "快建",
        QRes: "快修",
    },
    placeholder_class: {
        Manp_placeholder: "人力",
        Ammu_placeholder: "彈藥",
        Rati_placeholder: "口糧",
        Part_placeholder: "零件",
        TPro_placeholder: "人形製造",
        Equi_placeholder: "裝備製造",
        QPro_placeholder: "快速建造",
        QRes_placeholder: "快速修復",
    },
};
const language_en = {
    name: "English",
    lang: "en",
    title: "Girls' Frontline Logistics Combination Calculator",
    cssClass: "en",
    otherLangCssClass: ["zh-Hans", "zh-Hant"],
    help_wiki: "https://github.com/CHANTXU64/Girls-Frontline/wiki/Help",
    HTML: {
        Modal_footer_button_ok: "OK",
        Modal_footer_button_cancel: "Cancel",
        header: "Logistics Combination Calculator ",
        Config_text: "All configurations",
        description_text: "The calculation results are only related to the ratio of resources (or contracts). The calculation results are expected value.",
        localstorageDoesNotWork: "For some reason, Web storage doesn't work, you need to manually export the configurations.",
        localstorageWarning_text: "The pages use Web storage. Clearing the browser cache will cause all data to be cleared. Please manually export and save your data regularly.",
        setting: "Setting",
        Tab_Anytime_name: "Continuous",
        Tab_Timetable_name: "Timetable",
        tab_Anytime_time: "Total Logistics Time",
        tab_Anytime_hour: "hr",
        tab_Anytime_minute: "min",
        tab_Anytime_MinimumIntervalTime: "Minimum Interval Time",
        tab_Anytime_MinimumIntervalTime_minute: "min",
        tab_Timetable_time: "Total Logistics Time",
        tab_Timetable_hour: "hr",
        tab_Timetable_minute: "min",
        tab_Timetable_addtimeh5: "Add a new deployment logistics time point:",
        tab_Timetable_new_hour: "hr",
        tab_Timetable_new_minute: "min",
        h4GreatSuccessRate: "Average Great Success Rate",
        h4ChapterLimit: "Unlocked chapter",
        Display_PerHour_text: "Hourly",
        Display_Total_text: "Total",
        ContractWeight_notImportant: "Contract Weight:<br>0",
        ContractWeight_Important: "<br>100",
        start_ranking: "Start Ranking",
        clear_ranking: "Clear Ranking Results",
        result: "Ranking Results",
        setTarget_HG: "Hand Gun",
        setTarget_SMG: "Sub-Machine Gun",
        setTarget_RF: "Rifle",
        setTarget_AR: "Assault Rifle",
        setTarget_MG: "Machine Gun",
        setTarget_SG: "Shotgun",
        setTarget_2221: "Balanced",
        setTarget_Clear: "Clear",
        MissionTable_Title: "Missions",
        MissionTable_head_Mission: "Mission",
        MissionTable_head_Time: "Time",
        PlanDetailsTitle: "Plan Details",
        PlanDetails_Mission: "Mission",
        PlanDetails_Time: "Time",
        savePlan: "Save Plan",
        Capture: "Capture",
        PlanDetails_InputStartTime_label: "Start Time",
        PlanDetails_InputExecutionTimes_label: "Execution Times",
        Saved_Title: "Saved Plan",
        NoSaved: "No Saved Plan",
        start_ranking_html: "Click <span style=\"color:#007bff\">Start Ranking</span> button, top sixteen results will display here",
        permanentAddress: "Address: ",
        OfflineVersion: "Download offline version",
        Plan_Combination_title: "Plan Combination",
        PlanCombination_startDate_label: "Start Date",
        PlanCombination_endDate_label: "End Date",
        PC_current_title: "Current quantity - Start date",
        PC_deleteAllPlans: "Delete all plans",
        PC_saveAll: "Save all logistics plans",
        PC_deletePlan: "Delete the selected plan",
        PC_Ranking_card_title: "Logistics plans combination ranking",
        calcTargetValueTool_title: "Demand calculation tool",
        PC_targetValue_h5: "Target quantity - End date",
        PC_calcDemand: "Calculate demand",
        PC_demandValue_h5: "Demand quantity",
        PC_startRanking: "Start Ranking",
        Consumption_reset: "Reset",
        Consumption_times_label: "Number of daily executions",
        Consumption_add: "Add",
        consumption_times_th: "Times",
        DateTimePeriod: "Time period of the plans",
        PlanCombination_planStartDate_label: "Start Date",
        PlanCombination_planEndDate_label: "End Date",
        addNewTimePeriod: "Add",
        deleteAllTimePeriod: "Clear",
        PC_addLogisticsPlan: "Add a logistics plan",
        PC_addConsumptionPlan: "Add a revenue and expenditure plan",
        CommanderLevel_text: "Enter the commander level to calculate resources regen.",
        PC_calcDemand_description: "The calculation will include the current quantity, the target quantity, and revenue and expenditure plans, but doesn't include resources regen.",
        PC_demand_description: "Unlike the normal mode ranking, the ranking result is related to the ratio of all resources and contracts. You cannot enter values such as 2, 2, 2, 1, 1, 0, 0, 0, you should enter 600, 600, 600, 300, 1, 0, 0, 0 or 6, 6, 6, 3, 0.01, 0, 0.",
        Logistics_setting_title: "Logistics plan setting",
        Consumption_setting_title: "Revenue and expenditure plan setting",
        LogisticsConsumptionPlanSwitch_label: "Switch logistics or revenue and expenditure plan setting",
        PlanCombinationSwitch_label: "Logistics plan combination mode",
    },
    HTMLJS: {
        placeholder: {
            Config_importInput: "Imported configurations",
            Config_exportInput: "Exported configurations",
            Time_Anytime_hours: "Hours of total time",
            Time_Anytime_minutes: "Minutes of total time",
            Tab_Anytime_MinimumIntervalTime_minutes: "Minutes of minimum interval time",
            Time_Timetable_hours: "Hours of total time",
            Time_Timetable_minutes: "Minutes of total time",
            Tab_Timetable_new_hours: "Hours of new time point",
            Tab_Timetable_new_minutes: "Minutes of new time point",
            GreatSuccessRate: "Great Success base rate",
            importSaved_input: "Imported data",
            exportSaved_input: "Exported data",
            renameSaved_input: "New name",
            PlanDetails_InputExecutionTimes: "Number of executions",
            CommanderLevel: "Commander Level",
        },
        title: {
            help: "help",
            Config_importButton: "Import configurations",
            Config_export: "Export configurations",
            neverShowAgain_description: "close, never show again",
            neverShowAgain_localstorageWarning: "close, never show again",
            tab_Timetable_deleteall: "Delete all points",
            Tab_Timetable_AddNewTimePoint: "Add a deployment logistics time point",
            GreatSuccessRateUp_btn: "Great Success rate up",
            ChapterLimit: "Maximum unlocked chapter",
            ContractWeight: "Contract Weight",
            Target_minus_100_MT: "Reduced Manpower demand by 100",
            Target_minus_10_MT: "Reduced Manpower demand by 10",
            Target_plus_10_MT: "Increase Manpower demand by 10",
            Target_plus_100_MT: "Increase Manpower demand by 100",
            Target_minus_100_AT: "Reduced Ammunition demand by 100",
            Target_minus_10_AT: "Reduced Ammunition demand by 10",
            Target_plus_10_AT: "Increase Ammunition demand by 10",
            Target_plus_100_AT: "Increase Ammunition demand by 100",
            Target_minus_100_RT: "Reduced Ration demand by 100",
            Target_minus_10_RT: "Reduced Ration demand by 10",
            Target_plus_10_RT: "Increase Ration demand by 10",
            Target_plus_100_RT: "Increase Ration demand by 100",
            Target_minus_100_PT: "Reduced Parts demand by 100",
            Target_minus_10_PT: "Reduced Parts demand by 10",
            Target_plus_10_PT: "Increase Parts demand by 10",
            Target_plus_100_PT: "Increase Parts demand by 100",
            Target_minus_1_TT: "Reduced T-Doll Contract demand by 1",
            Target_minus_01_TT: "Reduced T-Doll Contract demand by 0.1",
            Target_plus_01_TT: "Increase T-Doll Contract demand by 0.1",
            Target_plus_1_TT: "Increase T-Doll Contract demand by 1",
            Target_minus_1_ET: "Reduced Equipment Contract demand by 1",
            Target_minus_01_ET: "Reduced Equipment Contract demand by 0.1",
            Target_plus_01_ET: "Increase Equipment Contract demand by 0.1",
            Target_plus_1_ET: "Increase Equipment Contract demand by 1",
            Target_minus_1_QPT: "Reduced Quick Production Contract demand by 1",
            Target_minus_01_QPT: "Reduced Quick Production Contract demand by 0.1",
            Target_plus_01_QPT: "Increase Quick Production Contract demand by 0.1",
            Target_plus_1_QPT: "Increase Quick Production Contract demand by 1",
            Target_minus_1_QRT: "Reduced Quick Restoration Contract demand by 1",
            Target_minus_01_QRT: "Reduced Quick Restoration Contract demand by 0.1",
            Target_plus_01_QRT: "Increase Quick Restoration Contract demand by 0.1",
            Target_plus_1_QRT: "Increase Quick Restoration Contract demand by 1",
            importSaved_importButton: "Import Plan",
            exportSaved_button: "Export plan",
            renameSaved_button: "Rename",
            renameSaved_applyButton: "Confirm",
            moveSaved_up: "Move the plan up one line",
            moveSaved_down: "Move the plan down one line",
            deleteSaved: "Delete this plan",
        },
        Demand_hour: "Hourly demand",
        Demand_total: "Total demand",
        Timetable_deletePoint: "Delete this point",
        FineTuning_minus: "Reduce demand",
        FineTuning_plus: "Increase demand",
    },
    JS: {
        alertTitle_warning: "Warning",
        chapter_start: "Chapter ",
        chapter_end: "",
        number(num) {return num;},
        Manp: "Mpwr",
        Ammu: "Ammo",
        Rati: "Ration",
        Part: "Parts",
        TPro: "T-Doll",
        Equi: "Eqpt",
        QPro: "QProd",
        QRes: "QRest",
        FineTuningManp: "Manpower",
        FineTuningAmmu: "Ammunition",
        FineTuningRati: "Ration",
        FineTuningPart: "Parts",
        FineTuningTPro: "T-Doll",
        FineTuningEqui: "Equipment",
        FineTuningQPro: "Q-Production",
        FineTuningQRes: "Q-Restoration",
        FineTuningTool: "Fine Tuning Tool",
        TargetValue0_alert: "Demand cannot all be 0!",
        tab_Anytime_alert1: "Total time cannot be 0!",
        tab_Timetable_alert1: "Cannot add deployment time point at the beginning",
        tab_Timetable_alert2: "The deployment time point added cannot exceed the total time",
        tab_Timetable_alert3: "Already added this time point",
        tab_Timetable_alert4: "Total time cannot be 0!",
        Mission: "Missions",
        MinIntervalTime: "Min Intvl",
        NoPlan: "No suitable plan",
        NoMission: "No available missions",
        PlanDetails_calculateMethod: "Mode",
        total_time: "Total time",
        total_greatSuccessRate: "Great Success Rate",
        PerHour: "Hourly",
        Total : "Total",
        ExecutionTimes: "Executions",
        plzInputPlanName: "Please enter the plan name",
        planDefaultName: "Custom",
        deleteSavedWarning_1: "Do you want to delete this configuration named ",
        deleteSavedWarning_2: "?",
        Saved_alert: "There is a problem with the imported data!",
        Saved_alert2: "Too many saved plan, cannot add anymore",
        Saved_prompt_title: "Plan Name",
        Saved_invalidNameFeedback1: "Please provide a name.",
        Saved_invalidNameFeedback2: "The name is too long.",
        config_alert: "This operation will overwrite all configurations. Do you want to continue?",
        FailedWindowLoadWarn: "The webpage may crash due to incorrect web storage. You can report the following data to GitHub or send to chantxu@outlook.com",
        PCTimeAlert1: "Please enter the start and end dates.",
        PCTimeAlert2: "Incorrect time period.",
        PC_L_alert1: "Please add a time period for the plan.",
        PC_L_alert2_1: "On ",
        PC_L_alert2_2: ", the total logistics time will be over 24 hours. Failed to add.",
        PC_L_alert3: "Too many plans were added, failed to add.",
        PC_C_alert2_1: "On ",
        PC_C_alert2_2: ", ohter revenue and expenditure plan have been added. Failed to add.",
        PC_deleteAll_confirm: "Do you want to delete all plans?",
        PC_saveAll_confirm: "Do you want to save all the logistics plans?",
        PC_ranking_add_alert: "Please add a logistics plan before start ranking.",
        PC_ranking_done: "Ranking done!",
        resource: "Resources",
        contract: "Contracts",
        delete_: "Delete",
        chartTooltip_L: "Logistics plan",
        chartTooltip_C: "Revenue and expenditure plan",
        C_preset: "Preset",
        C_preset_0: "Daily Quests",
        C_preset_1: "Weekly Quests",
        C_preset_2: "Forward basecamp 8:00",
        C_preset_3: "500*4 Fairies",
        C_preset_4: "2021 Fairies",
        C_preset_5: "0221 Fairies",
        C_preset_6: "2221 Fairies",
        C_preset_7: "7-1 Auto-battles",
        C_preset_8: "7-4 Auto-battles",
        C_preset_9: "11-5 Auto-battles",
        C_preset_10: "T-Doll Production HG",
        C_preset_11: "T-Doll Production SMG",
        C_preset_12: "T-Doll Production RF",
        C_preset_13: "T-Doll Production AR",
        C_preset_14: "T-Doll Production MG",
        C_preset_15: "T-Doll Production SG",
        C_preset_16: "Forward basecamp 2:00",
        C_preset_17: "Forward basecamp 5:00",
    },
    html_class: {
        Manp: "Mpwr",
        Ammu: "Ammo",
        Rati: "Ration",
        Part: "Parts",
        TPro: "T-Doll",
        Equi: "Eqpt",
        QPro: "QProd",
        QRes: "QRest",
    },
    placeholder_class: {
        Manp_placeholder: "Manpower",
        Ammu_placeholder: "Ammunition",
        Rati_placeholder: "Ration",
        Part_placeholder: "Parts",
        TPro_placeholder: "T-Doll",
        Equi_placeholder: "Equipment",
        QPro_placeholder: "Quick Production",
        QRes_placeholder: "Quick Restoration",
    },
};
